package com.fxu.jushuitan.dto.purchase;

import com.fxu.jushuitan.dto.stock.Batch;
import lombok.Data;

import java.math.BigDecimal;
import java.util.List;

/**
 * 采购退货返回数据结构
 * @author fangxu
 * @since 2023-09-18
 **/
@Data
public class PurchaseOutQueryRes {

    /**
     * 非必填
     * 退货单号
     */
    private Integer ioId;

    /**
     * 非必填
     * 单据日期
     */
    private String ioDate;

    /**
     * 非必填
     * 状态，Confirmed=生效，WaitConfirm待审核，Creating=草拟，Archive=归档，Cancelled=作废
     */
    private String status;

    /**
     * 非必填
     * 线上单号
     */
    private String soId;

    /**
     * 非必填
     * 财务状态，WaitConfirm=待审核，Confirmed=待审核
     */
    private String fStatus;

    /**
     * 非必填
     * 仓库名
     */
    private String warehouse;

    /**
     * 非必填
     * 收货人/供应商名称
     */
    private String receiverName;

    /**
     * 非必填
     * 收货电话
     */
    private String receiverMobile;

    /**
     * 非必填
     * 收件人省
     */
    private String receiverState;

    /**
     * 非必填
     * 收件人市
     */
    private String receiverCity;

    /**
     * 非必填
     * 收件人区
     */
    private String receiverDistrict;

    /**
     * 非必填
     * 收件人省地址
     */
    private String receiverAddress;

    /**
     * 非必填
     * 仓库编号，1=主仓，2=销退仓，3=进货仓，4=次品仓
     */
    private Integer whId;

    /**
     * 非必填
     * 备注
     */
    private String remark;

    /**
     * 非必填
     * 修改时间
     */
    private String modified;

    /**
     * 非必填
     * 采购单号
     */
    private Integer poId;

    /**
     * 非必填
     * 分仓编号
     */
    private String wmsCoId;


    /**
     * 非必填
     * 供应商ID
     */
    private Integer sellerId;

    /**
     * 非必填
     * 标记|多标签
     */
    private String labels;

    /**
     * 非必填
     * 物流公司
     */
    private String logisticsCompany;

    /**
     * 非必填
     * 物流公司编号
     */
    private String lcId;

    /**
     * 非必填
     * 物流单号
     */
    private String lId;

    /**
     * 非必填
     * 财务审核日期
     */
    private String archived;

    /**
     * 非必填
     * 创建人
     */
    private String creatorName;

    /**
     * 非必填
     * 商品集合
     */
    private List<Item> items;

    /**
     * 非必填
     * 批次集合，获取该节点系统中相关业务项需配置
     */
    private List<Batch> batchs;

    @Data
    public class Item {
        /**
         * 非必填
         * 明细id
         */
        private Integer ioiId;
        /**
         * 非必填
         * 商品编码
         */
        private String skuId;
        /**
         * 非必填
         * 商品名称
         */
        private String name;
        /**
         * 非必填
         * 属性
         */
        private String propertiesValue;
        /**
         * 非必填
         * 数量
         */
        private Integer qty;
        /**
         * 非必填
         * 单价
         */
        private BigDecimal costPrice;
        /**
         * 非必填
         * 金额
         */
        private BigDecimal costAmount;
        /**
         * 非必填
         * 款式编码
         */
        private String iId;
        /**
         * 非必填
         * 备注
         */
        private String remark;
        /**
         * 非必填
         * 退货单号
         */
        private Integer ioId;
        /**
         * 非必填
         * 公司编号
         */
        private Integer coId;

    }
}
